import Vue from 'vue'
import Vuex from 'vuex'
import VueXAlong from 'vuex-along'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    isToken: localStorage.getItem('user') || null,
    username: localStorage.getItem('userName') || null,
    itemDataObj: localStorage.getItem('itemData') || null,
  },
  getters: {
  },
  mutations: {
    setToken(state, token) {
      state.isToken = token
      localStorage.setItem("token", token)
    },
    setUsername(state, name) {
      state.username = name
      localStorage.setItem("userName", name)
    },
    setPageItemData(state, item) {
      // 这里存取的是 全部分类下 单个商品页中的所有数据
      this.state.itemDataObj = item
      localStorage.setItem("itemData", JSON.stringify(item))
    }
  },
  actions: {
  },
  modules: {
  },
  plugins: [VueXAlong({
    name: 'along',     //存放在localStroage或者sessionStroage 中的名字
    local: false,      //是否存放在local中  false 不存放 如果存放按照下面session的配置配
    session: { list: [], isFilter: true }
    //如果值不为false 那么可以传递对象 其中 当isFilter设置为true时， list 数组中的值就会被过滤调,这些值不会存放在seesion或者local中
  })]
})
